/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */

package paw.eltabique.service;

import java.util.List;
import paw.eltabique.service.interfaces.UsuarioFacadeLocal;
import paw.eltabique.service.interfaces.UsuarioFacadeRemote;
import javax.ejb.Stateless;
import javax.persistence.Query;
import javax.persistence.EntityManager;
import javax.persistence.PersistenceContext;
import paw.eltabique.domain.Usuario;

/**
 *
 * @author drakart
 */
@Stateless
public class UsuarioFacade extends AbstractFacade<Usuario> implements UsuarioFacadeLocal, UsuarioFacadeRemote {
  @PersistenceContext(unitName = "eltabique-ejbPU")
  private EntityManager em;

  protected EntityManager getEntityManager() {
    return em;
  }

  public UsuarioFacade() {
    super(Usuario.class);
  }

  @Override
  public boolean validar(String userName, String role) {
    try{
    Query q = (Query) em.createQuery("SELECT u FROM Usuario u WHERE u.userName = :LOGIN_NAME'");
     q.setParameter("LOGIN_NAME",userName);
     List<Usuario> list = q.getResultList();
     if (list.isEmpty())
       return false;
     else
     {
       Usuario usuario = list.get(0);
       if (usuario.getPerfil().getNombre().equals(role)){
               return true;
       }
      }
    return false;
  }catch (IllegalArgumentException ex){
    return false;
  }
  }

    public Usuario getUsuarioByNombre(String username) {
        return null;
    }

 
}
